package com.cictec.middleware.core.entity;

import java.io.Serializable;
import java.util.Date;
import javax.persistence.*;

/**
 * 运营时刻主表
 * @author ql
 *
 */
@Table(name = "t_bus_schedule")
public class BusSchedule implements Serializable {
    /**
     * 排班表主键
     */
    @Id
    @Column(name = "bs_uuid")
    private String bsUuid;

    /**
     * 机构id
     */
    @Column(name = "bs_org_uuid")
    private String bsOrgUuid;

    /**
     * 线路id
     */
    @Column(name = "bs_line_uuid")
    private String bsLineUuid;

    /**
     * 日期
     */
    @Column(name = "bs_schedule_time")
    private Date bsScheduleTime;

    /**
     * 创建人
     */
    @Column(name = "bs_create_user")
    private String bsCreateUser;

    /**
     * 创建时间
     */
    @Column(name = "bs_create_time")
    private Date bsCreateTime;

    /**
     * 修改用户
     */
    @Column(name = "bs_update_user")
    private String bsUpdateUser;

    /**
     * 修改时间
     */
    @Column(name = "bs_update_time")
    private Date bsUpdateTime;

    /**
     * 删除表示（0:未删除;1:已删除）
     */
    @Column(name = "bs_drop_flag")
    private String bsDropFlag;

    @Column(name = "bs_remark")
    private String bsRemark;

    /**
     * 时刻表Id
     */
    @Column(name = "bs_bf_uuid")
    private String bsBfUuid;

    /**
     * 时刻表名称
     */
    @Column(name = "bs_bf_name")
    private String bsBfName;

    @Column(name = "bs_yardman")
    private String bsYardman;

    /**
     * 车辆复用天数
     */
    @Column(name = "bs_repeat_days")
    private Integer bsRepeatDays;

    /**
     * 上下行换班天数
     */
    @Column(name = "bs_exchangedate")
    private Integer bsExchangedate;

    /**
     * 发车模式(滚动排班 ，计划排班）
     */
    @Column(name = "bs_type")
    private String bsType;

    /**
     * 关联的配车排班参数表
     */
    @Column(name = "bs_bsp_uuid")
    private String bsBspUuid;

    /**
     * 假日时刻表
     */
    @Column(name = "bs_bf_holiday_uuid")
    private String bsBfHolidayUuid;

    /**
     * 假日时刻名称
     */
    @Column(name = "bs_bf_holiday_name")
    private String bsBfHolidayName;

    /**
     * 司机复用天数
     */
    @Column(name = "bs_drv_repeat_days")
    private Integer bsDrvRepeatDays;

    /**
     * 班次复用天数
     */
    @Column(name = "bs_class_repeat_days")
    private Integer bsClassRepeatDays;

    private static final long serialVersionUID = 1L;

    /**
     * 获取排班表主键
     *
     * @return bs_uuid - 排班表主键
     */
    public String getBsUuid() {
        return bsUuid;
    }

    /**
     * 设置排班表主键
     *
     * @param bsUuid 排班表主键
     */
    public void setBsUuid(String bsUuid) {
        this.bsUuid = bsUuid == null ? null : bsUuid.trim();
    }

    /**
     * 获取机构id
     *
     * @return bs_org_uuid - 机构id
     */
    public String getBsOrgUuid() {
        return bsOrgUuid;
    }

    /**
     * 设置机构id
     *
     * @param bsOrgUuid 机构id
     */
    public void setBsOrgUuid(String bsOrgUuid) {
        this.bsOrgUuid = bsOrgUuid == null ? null : bsOrgUuid.trim();
    }

    /**
     * 获取线路id
     *
     * @return bs_line_uuid - 线路id
     */
    public String getBsLineUuid() {
        return bsLineUuid;
    }

    /**
     * 设置线路id
     *
     * @param bsLineUuid 线路id
     */
    public void setBsLineUuid(String bsLineUuid) {
        this.bsLineUuid = bsLineUuid == null ? null : bsLineUuid.trim();
    }

    /**
     * 获取日期
     *
     * @return bs_schedule_time - 日期
     */
    public Date getBsScheduleTime() {
        return bsScheduleTime;
    }

    /**
     * 设置日期
     *
     * @param bsScheduleTime 日期
     */
    public void setBsScheduleTime(Date bsScheduleTime) {
        this.bsScheduleTime = bsScheduleTime;
    }

    /**
     * 获取创建人
     *
     * @return bs_create_user - 创建人
     */
    public String getBsCreateUser() {
        return bsCreateUser;
    }

    /**
     * 设置创建人
     *
     * @param bsCreateUser 创建人
     */
    public void setBsCreateUser(String bsCreateUser) {
        this.bsCreateUser = bsCreateUser == null ? null : bsCreateUser.trim();
    }

    /**
     * 获取创建时间
     *
     * @return bs_create_time - 创建时间
     */
    public Date getBsCreateTime() {
        return bsCreateTime;
    }

    /**
     * 设置创建时间
     *
     * @param bsCreateTime 创建时间
     */
    public void setBsCreateTime(Date bsCreateTime) {
        this.bsCreateTime = bsCreateTime;
    }

    /**
     * 获取修改用户
     *
     * @return bs_update_user - 修改用户
     */
    public String getBsUpdateUser() {
        return bsUpdateUser;
    }

    /**
     * 设置修改用户
     *
     * @param bsUpdateUser 修改用户
     */
    public void setBsUpdateUser(String bsUpdateUser) {
        this.bsUpdateUser = bsUpdateUser == null ? null : bsUpdateUser.trim();
    }

    /**
     * 获取修改时间
     *
     * @return bs_update_time - 修改时间
     */
    public Date getBsUpdateTime() {
        return bsUpdateTime;
    }

    /**
     * 设置修改时间
     *
     * @param bsUpdateTime 修改时间
     */
    public void setBsUpdateTime(Date bsUpdateTime) {
        this.bsUpdateTime = bsUpdateTime;
    }

    /**
     * 获取删除表示（0:未删除;1:已删除）
     *
     * @return bs_drop_flag - 删除表示（0:未删除;1:已删除）
     */
    public String getBsDropFlag() {
        return bsDropFlag;
    }

    /**
     * 设置删除表示（0:未删除;1:已删除）
     *
     * @param bsDropFlag 删除表示（0:未删除;1:已删除）
     */
    public void setBsDropFlag(String bsDropFlag) {
        this.bsDropFlag = bsDropFlag == null ? null : bsDropFlag.trim();
    }

    /**
     * @return bs_remark
     */
    public String getBsRemark() {
        return bsRemark;
    }

    /**
     * @param bsRemark
     */
    public void setBsRemark(String bsRemark) {
        this.bsRemark = bsRemark == null ? null : bsRemark.trim();
    }

    /**
     * 获取时刻表Id
     *
     * @return bs_bf_uuid - 时刻表Id
     */
    public String getBsBfUuid() {
        return bsBfUuid;
    }

    /**
     * 设置时刻表Id
     *
     * @param bsBfUuid 时刻表Id
     */
    public void setBsBfUuid(String bsBfUuid) {
        this.bsBfUuid = bsBfUuid == null ? null : bsBfUuid.trim();
    }

    /**
     * 获取时刻表名称
     *
     * @return bs_bf_name - 时刻表名称
     */
    public String getBsBfName() {
        return bsBfName;
    }

    /**
     * 设置时刻表名称
     *
     * @param bsBfName 时刻表名称
     */
    public void setBsBfName(String bsBfName) {
        this.bsBfName = bsBfName == null ? null : bsBfName.trim();
    }

    /**
     * @return bs_yardman
     */
    public String getBsYardman() {
        return bsYardman;
    }

    /**
     * @param bsYardman
     */
    public void setBsYardman(String bsYardman) {
        this.bsYardman = bsYardman == null ? null : bsYardman.trim();
    }

    /**
     * 获取车辆复用天数
     *
     * @return bs_repeat_days - 车辆复用天数
     */
    public Integer getBsRepeatDays() {
        return bsRepeatDays;
    }

    /**
     * 设置车辆复用天数
     *
     * @param bsRepeatDays 车辆复用天数
     */
    public void setBsRepeatDays(Integer bsRepeatDays) {
        this.bsRepeatDays = bsRepeatDays;
    }

    /**
     * 获取上下行换班天数
     *
     * @return bs_exchangedate - 上下行换班天数
     */
    public Integer getBsExchangedate() {
        return bsExchangedate;
    }

    /**
     * 设置上下行换班天数
     *
     * @param bsExchangedate 上下行换班天数
     */
    public void setBsExchangedate(Integer bsExchangedate) {
        this.bsExchangedate = bsExchangedate;
    }

    /**
     * 获取发车模式(滚动排班 ，计划排班）
     *
     * @return bs_type - 发车模式(滚动排班 ，计划排班）
     */
    public String getBsType() {
        return bsType;
    }

    /**
     * 设置发车模式(滚动排班 ，计划排班）
     *
     * @param bsType 发车模式(滚动排班 ，计划排班）
     */
    public void setBsType(String bsType) {
        this.bsType = bsType == null ? null : bsType.trim();
    }

    /**
     * 获取关联的配车排班参数表
     *
     * @return bs_bsp_uuid - 关联的配车排班参数表
     */
    public String getBsBspUuid() {
        return bsBspUuid;
    }

    /**
     * 设置关联的配车排班参数表
     *
     * @param bsBspUuid 关联的配车排班参数表
     */
    public void setBsBspUuid(String bsBspUuid) {
        this.bsBspUuid = bsBspUuid == null ? null : bsBspUuid.trim();
    }

    /**
     * 获取假日时刻表
     *
     * @return bs_bf_holiday_uuid - 假日时刻表
     */
    public String getBsBfHolidayUuid() {
        return bsBfHolidayUuid;
    }

    /**
     * 设置假日时刻表
     *
     * @param bsBfHolidayUuid 假日时刻表
     */
    public void setBsBfHolidayUuid(String bsBfHolidayUuid) {
        this.bsBfHolidayUuid = bsBfHolidayUuid == null ? null : bsBfHolidayUuid.trim();
    }

    /**
     * 获取假日时刻名称
     *
     * @return bs_bf_holiday_name - 假日时刻名称
     */
    public String getBsBfHolidayName() {
        return bsBfHolidayName;
    }

    /**
     * 设置假日时刻名称
     *
     * @param bsBfHolidayName 假日时刻名称
     */
    public void setBsBfHolidayName(String bsBfHolidayName) {
        this.bsBfHolidayName = bsBfHolidayName == null ? null : bsBfHolidayName.trim();
    }

    /**
     * 获取司机复用天数
     *
     * @return bs_drv_repeat_days - 司机复用天数
     */
    public Integer getBsDrvRepeatDays() {
        return bsDrvRepeatDays;
    }

    /**
     * 设置司机复用天数
     *
     * @param bsDrvRepeatDays 司机复用天数
     */
    public void setBsDrvRepeatDays(Integer bsDrvRepeatDays) {
        this.bsDrvRepeatDays = bsDrvRepeatDays;
    }

    /**
     * 获取班次复用天数
     *
     * @return bs_class_repeat_days - 班次复用天数
     */
    public Integer getBsClassRepeatDays() {
        return bsClassRepeatDays;
    }

    /**
     * 设置班次复用天数
     *
     * @param bsClassRepeatDays 班次复用天数
     */
    public void setBsClassRepeatDays(Integer bsClassRepeatDays) {
        this.bsClassRepeatDays = bsClassRepeatDays;
    }

    @Override
    public String toString() {
        StringBuilder sb = new StringBuilder();
        sb.append(getClass().getSimpleName());
        sb.append(" [");
        sb.append("Hash = ").append(hashCode());
        sb.append(", bsUuid=").append(bsUuid);
        sb.append(", bsOrgUuid=").append(bsOrgUuid);
        sb.append(", bsLineUuid=").append(bsLineUuid);
        sb.append(", bsScheduleTime=").append(bsScheduleTime);
        sb.append(", bsCreateUser=").append(bsCreateUser);
        sb.append(", bsCreateTime=").append(bsCreateTime);
        sb.append(", bsUpdateUser=").append(bsUpdateUser);
        sb.append(", bsUpdateTime=").append(bsUpdateTime);
        sb.append(", bsDropFlag=").append(bsDropFlag);
        sb.append(", bsRemark=").append(bsRemark);
        sb.append(", bsBfUuid=").append(bsBfUuid);
        sb.append(", bsBfName=").append(bsBfName);
        sb.append(", bsYardman=").append(bsYardman);
        sb.append(", bsRepeatDays=").append(bsRepeatDays);
        sb.append(", bsExchangedate=").append(bsExchangedate);
        sb.append(", bsType=").append(bsType);
        sb.append(", bsBspUuid=").append(bsBspUuid);
        sb.append(", bsBfHolidayUuid=").append(bsBfHolidayUuid);
        sb.append(", bsBfHolidayName=").append(bsBfHolidayName);
        sb.append(", bsDrvRepeatDays=").append(bsDrvRepeatDays);
        sb.append(", bsClassRepeatDays=").append(bsClassRepeatDays);
        sb.append("]");
        return sb.toString();
    }
}